package com.kwlt.smc.entity;

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Transient;

import org.hibernate.annotations.Cache;
import org.hibernate.annotations.CacheConcurrencyStrategy;

/**
 * 日期统计表
 * @author xushunxin
 *
 */
@Entity
@Table(name="DATE_SUM")
@Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
public class DateSum {
	
	private Long dateSumId;
	/**
	 * 用户
	 */
	private String user;
	/**
	 * 日期	
	 */
	private Date userDate;
	/**
	 * 运营商
	 */
	private String operators;
	/**
	 * 接入号
	 */
	private String accessNumber;
	/**
	 * 发送总数
	 */
	private Long sendNum;
	/**
	 * 成功数
	 */
	private Long successNum;
	/**
	 * 年
	 */
	private String years;
	/**
	 * 月
	 */
	private String month;
	/**
	 * 查询开始日期
	 */
	private String beginDate;
	/**
	 * 查询结束日期
	 */
	private String endDate;
	
	private Long failNum;
	
	private Long unknownNum;
	@Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	public Long getDateSumId() {
		return dateSumId;
	}

	public void setDateSumId(Long dateSumId) {
		this.dateSumId = dateSumId;
	}
	
	@Column(nullable=false,length = 50)
	public String getUser() {
		return user;
	}


	public void setUser(String user) {
		this.user = user;
	}

	@Column(nullable=false)
	@Temporal(TemporalType.TIMESTAMP)
	public Date getUserDate() {
		return userDate;
	}

	public void setUserDate(Date userDate) {
		this.userDate = userDate;
	}

	@Column(nullable=false,length = 50)
	public String getOperators() {
		return operators;
	}

	public void setOperators(String operators) {
		this.operators = operators;
	}
	
	@Column(nullable=false,length = 50)
	public String getAccessNumber() {
		return accessNumber;
	}

	public void setAccessNumber(String accessNumber) {
		this.accessNumber = accessNumber;
	}

	@Column(length=12)
	public Long getSendNum() {
		return sendNum;
	}

	public void setSendNum(Long sendNum) {
		this.sendNum = sendNum;
	}
	
	@Column(length=12)
	public Long getSuccessNum() {
		return successNum;
	}

	public void setSuccessNum(Long successNum) {
		this.successNum = successNum;
	}

	@Column(length=50)
	public String getYears() {
		return years;
	}

	public void setYears(String years) {
		this.years = years;
	}

	@Column(length=50)
	public String getMonth() {
		return month;
	}

	public void setMonth(String month) {
		this.month = month;
	}
	@Column(length=12)
	public Long getFailNum() {
		return failNum;
	}

	public void setFailNum(Long failNum) {
		this.failNum = failNum;
	}
	@Transient
	public String getBeginDate() {
		return beginDate;
	}

	public void setBeginDate(String beginDate) {
		this.beginDate = beginDate;
	}
	@Transient
	public String getEndDate() {
		return endDate;
	}

	public void setEndDate(String endDate) {
		this.endDate = endDate;
	}

	public Long getUnknownNum() {
		return unknownNum;
	}

	public void setUnknownNum(Long unknownNum) {
		this.unknownNum = unknownNum;
	}
	
	
}
